The invention relates to modifying a color page described in a page description language so that the page can be correctly trapped.
In the printing industry, press registration is the accurate positioning of two or more colors of ink on a printed sheet. When the colors on a sheet are in register, all colors appear precisely where intended, without gaps between colors or overlap of colors. Misregistration can be caused by a number of factors, including errors in platemaking and film handling prior to platemaking, poorly-maintained printing presses or poorly-trained operators, paper inaccuracy or instability, and lack of environmental controls. One result of misregistration is unprinted paper showing through between colors, where no unprinted area was intended. Even a small registration error can result in a thin white line showing between colors on a sheet.
Trapping is the process of compensating for press misregistration by intentionally overlapping colors prior to printing. For example, a spread expands the color of a foreground image to overlap with the background color. Conversely, a choke enlarges the background color to overlap with the foreground image. The area of color added to create overlap, called a trap, provides a degree of protection against gaps created by misregistration. Although the trap color may be the same as the background or foreground color, it need not be. Trapping involves deciding where to place traps, and setting the size and color of traps so as to correct for possible misregistration while being minimally noticeable to the human eye.
It is conventional in the electronic publishing industry to design pages using a page description language (PDL), such as the Adobe(copyright) PostScript(copyright) language, to describe a page using resolution-independent elements. In PostScript, a path is a collection of ordered directed connected straight line segments, referred to as edges. A path, which appears as a shape on the page, must be closed. Each edge in a path has a xe2x80x9cfrom pointxe2x80x9d and a xe2x80x9cto pointxe2x80x9d which define the position and direction of the edge. The to point of an edge in a path is the same point as the from point of the subsequent edge in the path, and the to point of the last edge in the path is the same point as the from point of the first edge in the path. Edges in a path may intersect.
An object may consist of one or more paths, all filled or stroked in a single color. An object has a unique sequence number, also referred to as a z-order or paint order, that is shared by each of the paths in the object. The sequence number of an object specifies when the object will be drawn on the page in relation to other objects. The object with the lowest sequence number will be drawn first, followed by the object with the next lowest sequence number. This sequential drawing of objects may result in one object being partially or entirely occluded by other objects with higher sequence numbers.
To render a PostScript page (by which is meant a PostScript language description of a page) on an output device such as a printer, the page must first be rasterized, that is, the vector representation of the page must be converted into a two-dimensional array of pixels. The resolution of an output device is defined by the number of pixels on the output medium of the output device per unit distance or per unit area.
A PostScript page description may be analyzed to produce a new PostScript page description which contains traps. The new PostScript page description may then be used to render the page, with traps, according to conventional methods. Alternatively, the PostScript page may first be rasterized, after which traps are generated in rasterized form by analyzing the rasterized page.
A peeker is a gap between two edges in vector representation that is narrower than a device pixel at the resolution of the output device on which the vectors are to be rendered. The invention modifies a vector image to be rendered in rasterized form, so that traps may be correctly generated wherever peekers exist. In particular, the invention corrects vector space color transitions so that they match color transitions in rasterized form.
In one aspect, the invention prepares a resolution-independent representation of a region for trapping. Specifically, a peeker is found between a first edge in the region and a second edge in the region, and an abutting color that will abut a side of the first edge between the first edge and the second edge when the first edge is rendered in rasterized form is identified. The color of the first edge on the side of the first edge between the first edge and the second edge is then changed to the abutting color. The region is then trapped and rendered on an output device, such as a printer.
In another aspect, the invention identifies an exterior color of a resolution-independent edge in a path based on information derived from the interior colors of other edges in other paths. The exterior color so identified may then be advantageously used in peeker detection and color correction, and in trapping.
Among the technical advantages of the invention are one or more of the following.
One advantage of the invention is that it performs peeker color correction on objects while they are in vector form, prior to rasterization. This provides a basis for more accurate positioning of traps than trapping based on the rasterized page by itself. Also, because the invention provides a basis for resolution-independent trapping, pages which are trapped according to the invention may be rendered at a number of resolutions without the need for re-trapping.
A further advantage of the invention is that use of the vector representation preserves information about objects that is lost during rasterization, allowing more complete and varied processing of the edge table.
Furthermore, vector space is a more efficient representation of the rendered appearance of an area than raster space; a color transition many hundred pixels in length can be described in one small data structure in vector form. This storage efficiency is critical to obtaining high throughput and efficient trapping performance.
Other features and advantages of the invention will become apparent from the following description and from the claims.